package com.tinycloud.miracll.product.mapper;

import java.util.List;
import com.tinycloud.miracll.product.domain.ProductKeyProcessDeviateConfMain;
import com.tinycloud.miracll.product.domain.ProductKeyProcessDeviateConfDetail;

/**
 * ERP重控点位偏差配置主Mapper接口
 * 
 * @author tiny
 * @date 2021-12-07
 */
public interface ProductKeyProcessDeviateConfMainMapper 
{
    /**
     * 查询ERP重控点位偏差配置主
     * 
     * @param device ERP重控点位偏差配置主主键
     * @return ERP重控点位偏差配置主
     */
    public ProductKeyProcessDeviateConfMain selectProductKeyProcessDeviateConfMainByDevice(String device);

    /**
     * 查询ERP重控点位偏差配置主列表
     * 
     * @param productKeyProcessDeviateConfMain ERP重控点位偏差配置主
     * @return ERP重控点位偏差配置主集合
     */
    public List<ProductKeyProcessDeviateConfMain> selectProductKeyProcessDeviateConfMainList(ProductKeyProcessDeviateConfMain productKeyProcessDeviateConfMain);

    /**
     * 新增ERP重控点位偏差配置主
     * 
     * @param productKeyProcessDeviateConfMain ERP重控点位偏差配置主
     * @return 结果
     */
    public int insertProductKeyProcessDeviateConfMain(ProductKeyProcessDeviateConfMain productKeyProcessDeviateConfMain);

    /**
     * 修改ERP重控点位偏差配置主
     * 
     * @param productKeyProcessDeviateConfMain ERP重控点位偏差配置主
     * @return 结果
     */
    public int updateProductKeyProcessDeviateConfMain(ProductKeyProcessDeviateConfMain productKeyProcessDeviateConfMain);

    /**
     * 删除ERP重控点位偏差配置主
     * 
     * @param device ERP重控点位偏差配置主主键
     * @return 结果
     */
    public int deleteProductKeyProcessDeviateConfMainByDevice(String device);

    /**
     * 批量删除ERP重控点位偏差配置主
     * 
     * @param devices 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteProductKeyProcessDeviateConfMainByDevices(String[] devices);

    /**
     * 批量删除ERP重控点位偏差配置明细
     * 
     * @param devices 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteProductKeyProcessDeviateConfDetailByDevices(String[] devices);
    
    /**
     * 批量新增ERP重控点位偏差配置明细
     * 
     * @param productKeyProcessDeviateConfDetailList ERP重控点位偏差配置明细列表
     * @return 结果
     */
    public int batchProductKeyProcessDeviateConfDetail(List<ProductKeyProcessDeviateConfDetail> productKeyProcessDeviateConfDetailList);
    

    /**
     * 通过ERP重控点位偏差配置主主键删除ERP重控点位偏差配置明细信息
     * 
     * @param device ERP重控点位偏差配置主ID
     * @return 结果
     */
    public int deleteProductKeyProcessDeviateConfDetailByExcelServerRCID(String device);
}
